:root {
  --vc-nav-background: transparent;
  --vc-nav-border-radius: 0;
  --vc-nav-color: var(--vc-clr-primary);
  --vc-nav-color-hover: var(--vc-clr-secondary);
  --vc-nav-height: 30px;
  --vc-nav-width: 30px;
}

.carousel__next,
.carousel__prev {
  align-items: center;
  background: var(--vc-nav-background);
  border: 0;
  border-radius: var(--vc-nav-border-radius);
  color: var(--vc-nav-color);
  cursor: pointer;
  display: flex;
  font-size: var(--vc-nav-height);
  height: var(--vc-nav-height);
  justify-content: center;
  padding: 0;
  position: absolute;
  inset-block-start: 50%;
  transform: translateY(-50%);
  width: var(--vc-nav-width);
}

.carousel__next--disabled,
.carousel__prev--disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.carousel__next {
  inset-inline-end: 0;
}

.carousel__prev {
  inset-inline-start: 0;
}

.carousel.is-vertical {
  .carousel__next,
  .carousel__prev {
    inset-inline: auto 50%;
    inset-block-start: auto;
    transform: translateX(50%);
  }

  &.is-ttb {
    .carousel__next {
      inset-block-end: 0;
    }
    .carousel__prev {
      inset-block-start: 0;
    }
  }

  &.is-btt {
    .carousel__next {
      inset-block-start: 0;
    }
    .carousel__prev {
      inset-block-end: 0;
    }
  }
}

@media (hover: hover) {
  .carousel__next:hover,
  .carousel__prev:hover {
    color: var(--vc-nav-color-hover);
  }
}
